Users of computing devices, such as desktop personal computers (PCs), set-top boxes, personal digital assistants (PDAs), and so on, have access to an ever increasing amount of media from an ever increasing variety of sources. For example, a user may interact with a desktop PC that executes a plurality of applications to provide media for output, such as home videos, songs, slideshow presentations, and so on. The user may also utilize a set-top box to receive traditional television programming that is broadcast to the set-top box over a broadcast network. Additionally, the set-top box may be configured as a digital video recorder (DVR) such that the user may store the broadcast media in memory on the set-top box for later playback. Further, the user may interact with a wireless phone that executes a plurality of applications such that the user may read and send email, play video games, view spreadsheets, and so forth.
Streaming media provides increased functionality to a user such that the user may quickly receive the media. Without streaming, if the entire amount of the media was needed to be received from a source device before it was output by a client device, the user may experience a delay in rendering the media at the client device. By streaming the media, the delay encountered by the user may be lessened. Thus, media streaming may be used to provide “real-time” rendering of data.
To stream media, media is transmitted from a source device in a streaming or continuous fashion, generally using data packets, for rendering at a client device as the data arrives, as opposed to media that is not rendered until an entire file which includes the media is available at the client device. Streaming may be used for a variety of types of media, such as video media, audio media, multimedia, and the like. A stream of video media provides a sequence of “moving images” that are transmitted and displayed when the images arrive. Likewise, a stream of audio provides sound data that is played as the audio media arrives. A stream of multimedia may include both audio and video media.
Because the user may have access to a wide variety of computing devices on which to experience rendered streaming media, the user may wish to change from interacting with streaming media on one computing device to another computing device. For instance, the user may watch a television program that is stored on a digital video recorder (DVR) in a living room. The television program is output by the DVR for rendering by a display device in the living room such that the user may view and listen to the television program. During the output of the television program, however, the user may wish to view and listen to the television program utilizing another television located in the user's kitchen. Traditional methods utilized to accomplish this task required the user to select hardware and software components for transferring the television program and required the user to manually navigate to the point in interest in the output of the television program. Thus, the user could not dynamically redirect the streaming media from one computing device to another computing device.
Accordingly, there is a continuing need for dynamic redirection of streaming media between computing devices.